package hp.com.service;

import hp.com.entity.CartData;
import hp.com.entity.OrderDetail;
import hp.com.entity.Orders;
import hp.com.entity.Users;

import java.sql.SQLException;
import java.util.List;

public interface OrderService {
List<Orders> GetOrderByUserId(int id) throws Exception;
    /**
     * 通过传来的数据执行往数据库里写入订单操作
     * @param cart cart数据编号，以英文逗号隔开
     * @param addr addr数据编号，以英文都好隔开
     * @param user 用户对象
     * @throws Exception
     */
     String DoInsertOrder(String cart, String addr, Users user)throws Exception;
    /**
     * 将cart数据转换为OrderDetail数据 ！！！此时OrderDetail缺少订单号属性
     * @param cart
     * @return
     * @throws Exception
     */
     OrderDetail TransferOrderDetailFromCart(CartData cart) throws Exception;

    /**
     * 生成新的订单号
     * @return
     * @throws Exception
     */
    String getNewOrderNumber() throws Exception;

    /**
     * 通过订单号来获取订单
     * @param serial
     * @return
     * @throws Exception
     */
    Orders getOrderBySerial(String serial) throws Exception;
}
